﻿// 3992. 树上有猴.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
/*
https://www.acwing.com/problem/content/3995/

一棵大树上初始时有若干个猴子（也可能没有）。

接下来 n
 个时刻，每个时刻树上猴子的数量都会发生变动。

第 i
 时刻的变动数量为 ai
，ai>0
 表示有 ai
 只猴子上了树，ai<0
 表示有 |ai|
 只猴子下了树。

已知，在任意时刻树上的猴子总数都没有超过 w
，当然也不可能小于 0
。

请问，初始时的猴子数量共有多少种可能性？

例如，当 n=3,w=5
 且 a1=2,a2=1,a3=−3
 时，初始时的猴子数量可能为 0,1,2
 个。

输入格式
第一行包含两个整数 n,w
。

第二行包含 n
 个整数 a1,a2,…,an
。

输出格式
一个整数，表示初始时的猴子数量共有多少种可能性。

如果无解，即初始时有多少只猴子都不满足题目要求，则输出 0
。

数据范围
前六个测试点满足，1≤n≤10
，1≤w≤10
。
所有测试点满足，1≤n≤1000
，1≤w≤109
，−106≤ai≤106
。

输入样例1：
3 5
2 1 -3
输出样例1：
3
输入样例2：
2 4
-1 1
输出样例2：
4
输入样例3：
4 10
2 4 1 2
输出样例3：
2
*/
#include <iostream>

int main()
{
    std::cout << "Hello World!\n";
}

 